package cn.school.system.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import cn.school.common.annotation.Excel;
import cn.school.common.core.domain.BaseEntity;

/**
 * 提现申请信息对象 bi_cash_apply
 *
 * @author asheng
 * @date 2023-12-25
 */
@Data
public class BiCashApply extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** ID */
    private Long id;

    /** 提现金额 */
    @Excel(name = "提现金额")
    private BigDecimal amount;

    /** 状态：1-申请提交，2-提现失败，3-提现成功 */
    @Excel(name = "状态：1-申请提交，2-提现失败，3-提现成功")
    private Integer status;

    /** 提现失败原因 */
    @Excel(name = "提现失败原因")
    private String failMsg;

    /** 完成时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "完成时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date completeTime;

    /** 银行名称 */
    @Excel(name = "银行名称")
    private String bankName;

    /** 开户名 */
    @Excel(name = "开户名")
    private String bankAccountName;

    /** 银行账号 */
    @Excel(name = "银行账号")
    private String bankCardNumber;

    /** 微信openid */
    @Excel(name = "微信openid")
    private String openid;

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("amount", getAmount())
            .append("status", getStatus())
            .append("failMsg", getFailMsg())
            .append("completeTime", getCompleteTime())
            .append("bankName", getBankName())
            .append("bankAccountName", getBankAccountName())
            .append("bankCardNumber", getBankCardNumber())
                .append("openid", getOpenid())
            .toString();
    }
}
